package com.mq.topic;

import com.rabbitmq.client.AMQP;
import org.springframework.amqp.core.*;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

/**
 * @author ytj
 * @date 2024/1/15
 */
@Configuration
public class Demo2Config {

    @Bean
    public Queue queue(){
        //队列名称  是否持久   是否排他  是否自动删除
        return new Queue(Demo2Message.QUEUE_NAME,true,false,false);
    }

    @Bean
    public Exchange exchange(){
        //topic模式 交换机名称  是否持久化  是否自动删除
        return new TopicExchange(Demo2Message.ExCHANGE_NAME,true,false);
    }

    @Bean
    public Binding binding(){
        // 队列  交换机  路由key
        return BindingBuilder.bind(queue()).to(exchange()).with(Demo2Message.routeKey).noargs();
    }
}
